package com.cloud.api.domain.model;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.Size;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

import java.io.Serializable;
@Getter
@Setter
@Accessors(chain = true)
@Schema(name = "ModelEnergy", description = "储能装置信息")
public class ModelEnergy implements Serializable {

    @Schema(description = "主键")
    @NotEmpty(message = "{validation.common.id}")
    private String id;

    @Schema(description = "电池质保时间")
    @Size(max = 30,message = "{validation.common.maxSize}")
    private String batteryWarrantyTime;

    @Schema(description = "储能装置型号")
    @Size(max = 50,message = "{validation.common.maxSize}")
    private String energyDeviceType;

    @Schema(description = "单体数量(个)")
    @Size(max = 30,message = "{validation.common.maxSize}")
    private String monomerNumber;

    @Schema(description = "储能装置额定（标称）电压V")
    @Size(max = 30,message = "{validation.common.maxSize}")
    private String energyDeviceRatedVoltage;

    @Schema(description = "产品组合形式")
    @Size(max = 30,message = "{validation.common.maxSize}")
    private String productCombiningForm;

    @Schema(description = "储能装置生产企业")
    @Size(max = 30,message = "{validation.common.maxSize}")
    private String energyDeviceProductionEnterprise;

    @Schema(description = "额定容量(Ah)")
    @Size(max = 30,message = "{validation.common.maxSize}")
    private String ratedCapacity;

    @Schema(description = "充电循环次数(次)")
    @Size(max = 30,message = "{validation.common.maxSize}")
    private String chargeCycleNum;

    @Schema(description = "总储电量(Kwh)")
    @Size(max = 30,message = "{validation.common.maxSize}")
    private String energyStorage;

    @Schema(description = "储能装置额定(标称)容量(Ah)")
    @Size(max = 30,message = "{validation.common.maxSize}")
    private String energyDeviceRatedCapacity;
}
